iT邦幫忙

DAY 9
5

ROR相關系列 第 9

淺談HTML Parsing的套件-Nokogiri

  • 分享至 

  • xImage
  •  

Nokogiri是提供HTML,XML,SAX,的Parser工具
Nokogiri的基本需求環境需要除了Ruby外,仍需要XML的相關套件,
如Ubuntu為例,就要安裝libxml2、libxml2-dev、libxslt、libxslt-dev等套件

sudo aptitude install libxml2 libxml2-dev libxslt libxslt-dev

接著安裝Nokogiri方式也很簡單

gem install Nokogiri

在程式碼宣告時,除了Nokogiri外,也要使用open-uri,當然這個是要Parser網頁的原因,但更重要的是
別忘記宣告rubygems套件,否則可是會顯示錯誤訊息的!

require 'rubygems'
require 'nokogiri'
require 'open-uri'

接著宣告一個你要開啟的網址

doc = Nokogiri::HTML(open('http://www.google.com/search?q=css'))

接下來要parser的部份,如果我們確定要抓取搜尋結果的標題部份

  doc.search('h3.r a.l', '//h3/a[@class="l"]').each do |link|
     puts link.content
    end

這樣就可以把搜尋結果的標題可以抓出來,不過目前測試,如果關鍵字是中文字就會有編碼的問題會顯示錯誤.


上一篇
淺談Ruby開發者值得參考的工具盒-The Ruby Toolbox
下一篇
淺談在Ruby上實做RDF(Resource Description Framework)的套件-RDF
系列文
ROR相關30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言